package com.ruoyi.training.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.training.domain.TrainingClass;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;
import java.util.Set;


@Builder
@NoArgsConstructor
@AllArgsConstructor
@Data
public class TrainingClassDto extends TrainingClass {
    //班主任姓名,接收前端输入的模糊查询参数
    public String headTeacherName;

    // 第一个班主任姓名（对应head_teacher1）
    private String headTeacher1Name;

    // 第二个班主任姓名（对应head_teacher2）
    private String headTeacher2Name;

    // 前端传递的单个项目ID（用户点击的项目）
    private String projectId;

    // 后端处理后的项目ID集合（包含当前项目及所有子项目）
    private Set<String> projectIds;

    // 拼接后的项目名称（如“项目1、项目2”）
    private String trainingProjectNames;

    // 当前登录用户ID（用于班主任查询我的班级）
    private String currentUserId;

    //培训部门
    private String trainingDepartmentName;

    //班级交接备注
    private String classHandoverRemark;

    //是否完成交接 true false
    private String completeHandover;

    //备注类型
    private String remarkType;

    //附件
    private String attachmentName;
    //组成人员(状态 已设置，未设置)
    private String compositionStatus;
    //课程(状态 已设置，未设置)
    private String courseStatus;
    //教师(状态 已设置，未设置)
    private String teacherStatus;
    //教材(状态 已设置，未设置)
    private String textbookStatus;
    //耗材(状态 已设置，未设置)
    private String consumablesStatus;
    //考试(状态 已设置，未设置)
    private String examStatus;
    //证书(状态 已设置，未设置)
    private String certificateStatus;
    //培训计划(状态 已设置，未设置)
    private String trainingPlanStauts;
    //费用结算(状态 已设置，未设置)
    private String expenseSettlement;
    //考试时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date examTime;
    //考试地点
    private String examLocation;
    //培训人数
    private int trainingNum;
    //填报人数
    private int fillNum;
}
